import json
import csv
import os
from config import dummy_data_dir

# 定义文件路径
json_file = os.path.join(dummy_data_dir, 'addr_info.json').replace(os.sep, '/')
output_file = os.path.join(dummy_data_dir, 'addr_info.csv').replace(os.sep, '/')

# 确保输出目录存在
os.makedirs(os.path.dirname(output_file), exist_ok=True)

# 读取JSON文件
with open(json_file, 'r', encoding='utf-8') as f:
    addresses = json.load(f)

# 为每个地址分配基站编码
lac_codes = []
for i, address in enumerate(addresses, 1):
    lac_code = f"L{i:05d}"  # 生成L00001-L99999格式的编码
    lac_codes.append({
        'district': address['区域'],
        'type': address['类型'],
        'name': address['名称'],
        'longitude': address['经度'],
        'latitude': address['纬度'],
        'lac_code': lac_code
    })

# 写入CSV文件
with open(output_file, 'w', newline='', encoding='utf-8') as csvfile:
    fieldnames = ['district', 'type', 'name', 'longitude', 'latitude', 'lac_code']
    writer = csv.DictWriter(csvfile, fieldnames=fieldnames)
    
    # 写入表头
    writer.writeheader()
    
    # 写入所有数据
    for item in lac_codes:
        writer.writerow(item)

print(f"地址信息已保存到: {output_file}")
print(f"共处理了 {len(lac_codes)} 条地址信息")
print(f"基站编码范围: {lac_codes[0]['lac_code']} - {lac_codes[-1]['lac_code']}")